#include <iostream>
#include <ctime>
#include <fstream>
using namespace std;

void bubbleSort(int list[], int listLength){
    while(listLength--)     {
        bool swapped = false;
        for(int i =0; i<listLength; i++)  {
            if(list[i]>list[i+1]){
                swap(list[i], list[i+1]);
                swapped=true;
            }
        }
        if(swapped==false) break;
    }

}

void read_from_file(const char *filename, int a[], int length)
{   ifstream file(filename);

    for(int i=0; i<length; i++)
        file >> a[i];
}

int main()
{
    const int LEN=5000;
    int a[LEN];

    read_from_file("m1_sorted.txt", a, LEN);
    unsigned int t_start = clock();
    bubbleSort(a,LEN);
    unsigned int t_finish = clock();
    unsigned int t_work = t_finish-t_start;
    cout<<"m1_sorted"<< t_work << "milliseconds \n";



    read_from_file("m2_reverse.txt", a, LEN);
    t_start = clock();
    bubbleSort(a,LEN);
    t_finish = clock();
    t_work = t_finish-t_start;
    cout<<"m2_reverse"<< t_work << "milliseconds \n";


    read_from_file("m3_shuffle.txt", a, LEN);
    t_start = clock();
    bubbleSort(a,LEN);
    t_finish = clock();
    t_work = t_finish-t_start;
    cout<<"m3_shuffle"<< t_work << "milliseconds \n";
     return 0;
}
